package common.web;

import lombok.AccessLevel;
import lombok.Data;
import lombok.experimental.FieldDefaults;

import java.io.Serializable;
import java.util.List;

/**
 * 分页通用对象 各个模块都可以使用
 * @param <T>
 */
@Data
@FieldDefaults(level = AccessLevel.PRIVATE)
public class PageDataVO<T> implements Serializable {

    /**
     * 页码 表示当前第几页
     */
    Integer pageNum;

    /**
     * 每页多少条
     */
    Integer pageSize;

    /**
     * 总共多少页
     * 前端也可以算 有一些前端组件直接提供分页功能  总条数 除以 每页多少条
     */
    Integer pages;

    /**
     * 总条数
     */
    Long total;

    /**
     * 具体的数据
     * 文章列表
     * 商品列表
     * 酒店列表
     */
    List<T> list;

}
